In today's telecommunication industry, data communication services are generally provided to customers, or subscribers, by communication service providers having vast communication networks including a variety of routers, switches, and other communication devices configured to provide the data communication services. From a technical perspective, data communication services such as Internet access involve the bi-directional communication of data between subscribers' communication devices and recipients' communication devices via the data communication networks of the subscribers' communication service providers and, perhaps, the data communication networks of other communication service providers. Data is typically encapsulated for upstream or downstream communication, as the case may be, in data packets at a sender's computer or other data communication device. Data packets from a plurality of senders who receive data communication services from the same communication service provider are often communicated from the senders' computers or other data communication devices to a routing communication device such as, but not limited to, a router operated by the communication service provider.
Some routing communication devices place received data packets into a transmission data queue in the order of their receipt to await transmission to respective intended recipients. Data packets are then pulled from the transmission data queue using a first-in, first-out method and are transmitted via the communication service provider's data communication network and the data communication networks of others, as need be, to a computer or other communication device of the data packets' respective intended recipients. Because the data packets may be received from computers or other communication devices of subscribers or senders in a random manner and because the data packets are queued in the order in which they are received, the transmission data queue comprises data packets in a random order. Consequently, the data packets are transmitted to the computers or other communication devices of their respective intended recipients in a random order and may not be received consistently over time, thus creating jitter for the intended recipients. For those intended recipients requiring consistent receipt of data packets, such jitter may be problematic and create other operational difficulties.
In attempt to prevent jitter and ensure more consistent transmission and receipt of data packets, some routing communication devices employ a second level of data packet queuing in which a data queue is uniquely associated with each subscriber or sender with which the routing communication devices are communicatively connected. During operation, when a routing communication device receives data packets from a subscriber or sender's computer or other data communication device, the routing communication device places the data packets in the data queue uniquely associated with the subscriber or sender for output therefrom on a first-in, first-out (FIFO) basis. Then, the routing communication device pulls a data packet from each of the uniquely associated data queues in a continual round robin manner and transmits the data packets via the communication service provider's data communication network and, if necessary, via the data communication networks of others, to a computer or other communication device of the data packets' respective intended recipients. By pulling a data packet from each uniquely associated data queue in a round robin manner, the transmission data queue comprises data packets from each uniquely associated data queue that are not arranged in a random order, but that are instead arranged in the same consistent round robin order in which they are pulled. As a consequence, data packets from subscriber or sender's computer or other data communication devices are received by their intended recipients in a consistent manner over time, thereby reducing and, possibly, eliminating jitter.
While the use of a second level of data packet queuing and round robin filling of a transmission data queue provides for consistent delivery of data packets to their respective intended recipients, such a method ignores that some subscribers pay their communication service providers higher service fees for enhanced data communication rates for upstream data communication, downstream data communication, or both. Ignoring that some subscribers pay higher service fees may not be problematic when data communications are not congested, but such subscribers may take exception during periods of network congestion to not receiving the higher data communication rates for which they are paying.
Therefore, there is a need in the industry for apparatuses and/or methods that provide communication service subscribers with the data communication rates for which they are paying, and that may address other business and/or technological issues associated with current apparatuses and/or methods.